草庐IT

MySQL 性能 : Single table or multiple tables

全部标签

c# - 背靠背 for 循环中的 int、short、byte 性能

(背景:WhyshouldIuseintinsteadofabyteorshortinC#)为了满足我自己对使用“适当大小”整数与“优化”整数的优缺点的好奇心,我编写了以下代码,这些代码强化了我之前对.Net中的int性能的看法(并对此进行了解释在上面的链接中)这是针对int性能而不是short或byte进行了优化。DateTimet;longa,b,c;t=DateTime.Now;for(intindex=0;index这在......方面给出了大致一致的结果~950000~2000000~1700000这符合我的预期。然而,当我尝试像这样为每种数据类型重复循环时......t=D

c# - 使用属性和性能

我正在优化我的代码,我注意到使用属性(甚至是自动属性)对执行时间有深远的影响。请参见下面的示例:[Test]publicvoidGetterVsField(){PropertyTestpropertyTest=newPropertyTest();Stopwatchstopwatch=newStopwatch();stopwatch.Start();propertyTest.LoopUsingCopy();Console.WriteLine("Usingcopy:"+stopwatch.ElapsedMilliseconds/1000.0);stopwatch.Restart();pro

c# - Owin/IIS 应用程序在 Azure 上的性能不佳

我们测量了一些性能测试,我注意到CPU在内核模式下运行了很多时间。我想知道这是为什么。应用程序:它是经典的Azure云服务Web角色,Owin在IIS下监听,Owin本身只提供缓存在内存中的静态文件(因此应该只有一点性能损失和一切都应该很快)。内容通过awaitstream.CopyToAsync(response.Body)复制到输出流。测试本身在gatling中看起来像这样:valopenLoginSet=exec(http("ROOT").get("/").headers(Headers105Test2.headers_0).resources(http("MED:arrow-d

c# - 如何最大化 http.sys 文件上传性能

我正在构建一个工具,用于将非常大的流数据集(单个流中可能达到TB数量级;通常为数十GB)从一台服务器传输到另一台服务器。该工具的客户端部分将从源磁盘读取block,并通过网络发送它们。服务器端将从网络上读取这些block并将它们写入服务器磁盘上的文件。现在我正在尝试决定使用哪种传输方式。选项包括原始TCP和HTTP。我真的非常希望能够使用HTTP。HttpListener(或者WCF,如果我想走那条路)使插入HTTP服务器API(http.sys)变得很容易,而且我可以免费获得身份验证和SSL之类的东西。现在的问题是性能。我编写了一个简单的测试工具,它使用BeginWrite/EndW

c# - C# 编译器的图像调试选项如何影响 .NET JIT 编译性能(包括动态方法)?

我正在尝试优化我的应用程序,使其在启动后立即运行良好。目前,它的发行版包含304个二进制文件(包括外部依赖项),总计57兆字节。它是一个WPF应用程序,主要执行数据库访问,没有任何重要的计算。我发现调试配置为大多数操作提供了更好的(~5倍增益)时间,因为它们是在应用程序进程的生命周期中首次执行的。例如,在NGENedDebug中打开应用内的特定屏幕需要0.3秒,JITtedDebug需要0.5秒,NGENedRelease需要1.5秒,JITtedRelease需要2.5秒。据我所知,JIT编译时间的差距是由JIT编译器对发布二进制文件应用更积极的优化造成的。据我所知,调试和发布配置的

C# Double.ToString() 性能问题

我有以下方法将double组转换为List:staticDestTest(Sources){Destd=newDest();if(s.A24!=null){double[]dd=s.A24;intcnt=dd.Length;Listlst=newList();for(inti=0;i根据我的基准测试,在循环中执行List.Add()似乎是最快的方法,超过了所有各种LINQ和Convert技巧。这真的很慢。一百万次调用需要2400毫秒(任何CPU,首选64位)。所以我正在尝试各种方法来让它更快。假设我显然无法缓存源或目标列表等。所以无论如何,我在这里偶然发现了一些奇怪的东西......如

c# - 从顶点组合中找到最小的不规则多边形(性能关键)

我需要在二维平面上的几个顶点中找到一个表面积最小的不规则多边形。不,这不是家庭作业。虽然我希望我现在回到学校。对于如何构建多边形有一些要求。假设我在8x8网格上绘制了3种不同类型的顶点(红色、绿色、蓝色)。我需要扫描此网格中满足红、绿、蓝组合要求的所有顶点,并选择表面积最小的顶点。获取不规则多边形的表面积非常简单。我主要关心的是高效扫描所有可能组合的性能。有关示例,请参见下图。所有三种类型都用于制作多边形,但圈出的一种具有最小的表面积,这是我的目标。与我尝试制作的原型(prototype)相比,这个场景得到了简化。多边形将由数十个(如果不是数百个)顶点构成,并且网格将大得多。此外,这将

c# - ASP.NET MVC URL 生成性能

ASP.NETMVC的一个小基准测试。查看页面代码:publicstringBechmark(Funcurl){vars=newStopwatch();varn=1000;s.Reset();s.Start();for(inti=0;i";}查看代码:Url.Action("Login","Account"))%>Url.Action("Login","Account",new{username="bla",password="bla2",returnurl="blabla32",rememberme=false}))%>Html.BuildUrlFromExpression(a=>a

c# - 性能问题 : comparing to String. 格式

不久前,JonSkeet的一篇文章在我脑海中植入了构建一个CompiledFormatter类的想法,用于在循环中使用而不是String.Format()。这个想法是对String.Format()的调用部分花在解析格式字符串上的开销;我们应该能够通过将该代码移出循环来提高性能。当然,诀窍是新代码应该完全匹配String.Format()行为。这周我终于做到了。我经历了使用.NetframeworksourceprovidedbyMicrosoft直接调整他们的解析器(事实证明String.Format()实际上将工作交给了StringBuilder.AppendFormat())。我

c# - 使用 C# 删除大量(>100K)文件,同时保持 Web 应用程序的性能?

我正在尝试从一个位置删除大量的文件(我的意思是超过100000个),因此该操作是从网页启动的。显然我可以使用string[]files=System.IO.Directory.GetFiles("pathwithfilestodelete");foreach(varfileinfiles){IO.File.Delete(file);}Directory.GetFileshttp://msdn.microsoft.com/en-us/library/wz42302f.aspx这个方法已经发过几次了:Howtodeleteallfilesandfoldersinadirectory?和De